import axios from 'axios';
// export function request(config,success,failure){
    // 创建axios的实例
    // const instance =axios.create({
    //     baseURL:"",
    //     timeout:5000
    // })
    // //发送网络请求
    // instance(config).then(res=>{ 
    //     success(res)
    // }).catch(err=>{
    //     failure(err)
    // })
// }

export function request(config){
    // return new Promise((resolve,rej)=>{
    // 创建axios的实例
    const instance =axios.create({
        baseURL:"/apis/",
        timeout:5000
    })
    // axios的拦截器
    // 请求拦截器
    instance.interceptors.request.use(config=>{
        return config
    },err=>{
        console.log(err)
    }
    )
    // 响应拦截器
    instance.interceptors.response.use(res=>{
        console.log(res);
        return res
    },err=>{
        console.log(err)
        return {code:"04",msg:"服务器错误",data:err}
    }
    )
    //发送网络请求
    return  instance(config)  //本身返回的就是Promise对象 
    // instance(config)
    //     .then(res=>{
    //         resolve(res)
    //     })
    //     .catch(err=>{
    //         rej(err)
    //     })
    // })
}

//_________________________________________________

// 数据库连接测试 / 连接样本
export const dbConnTest = (callback)=>{
    axios.get(`/apis/dbconntest`).then(res=>{
        callback(res.data);
    }).catch(err => {
        console.log(err);
    });
}

// 获取验证码
export const getVerfityCode = (callback) => {
    axios.get(`/apis/getVerfityCode`).then(res => {
        callback(res.data);
    }).catch(err => {
        console.log(err)
    });
};

// 图书发布
export const bookSellRelease = (bookInfoToRelease,callback)=>{
    const config = {
        url: "/apis/bookSellRelease",
        method: "POST",
        data: bookInfoToRelease,
    }
    axios(config).then(res => {
        callback(res.data);
    }).catch(err => {
        console.log(err)
    });
}

export const register = (userInfo, callback) => {
    const config = {
        url: "/apis/register",
        method: "POST",
        data: userInfo,
    }
    axios(config).then(res => {
        callback(res.data);
    }).catch(err => {
        console.log(err)
    });
}

export const getBookOnSellList = (listType,filter,callback)=>{
    const config = {
        url: "/apis/getBookOnSellList",
        method: "POST",
        data: {listType,filter},
    }
    axios(config).then(res => {
        callback(res.data);
    }).catch(err => {
        console.log(err)
    });
}